/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode() {}
 *     ListNode(int val) { this.val = val; }
 *     ListNode(int val, ListNode next) { this.val = val; this.next = next; }
 * }
 */
//反转链表
class Solution1 {
    public ListNode reverseList(ListNode head) {
        if(head==null){
            return head;
        }
        ListNode dummy=new ListNode(-1);
        dummy.next=head;
        ListNode prev=dummy;
        ListNode cur=head;

        while(cur.next!=null){
            ListNode tmp=cur.next;
            cur.next=cur.next.next;
            tmp.next=prev.next;
            prev.next=tmp;
        }
        return dummy.next;

    }
}